package org.example.volunteerend.entity;

import lombok.Data;
import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.List;

@Data
public class VolunteerProject {
    private Integer projectId;
    private String projectName;
    private String description;
    private LocalDateTime startTime;
    private LocalDateTime endTime;
    private String location;
    private Integer maxVolunteers;
    private Integer currentVolunteers;
    private String status;
    private String coverImageUrl;
    private List<String> projectImages = new ArrayList<>();
    private Integer likes;
    private Integer dislikes;
    private Integer adminId;
    private Integer organizerId;
    
    // 附加信息
    private List<ProjectCategory> categories;
    private User organizer;
    private List<User> volunteers;
    
    public Integer getProjectId() {
        return projectId;
    }
    
    public void setProjectId(Integer projectId) {
        this.projectId = projectId;
    }
    
    public String getProjectName() {
        return projectName;
    }
    
    public void setProjectName(String projectName) {
        this.projectName = projectName;
    }
    
    public String getDescription() {
        return description;
    }
    
    public void setDescription(String description) {
        this.description = description;
    }
    
    public LocalDateTime getStartTime() {
        return startTime;
    }
    
    public void setStartTime(LocalDateTime startTime) {
        this.startTime = startTime;
    }
    
    public LocalDateTime getEndTime() {
        return endTime;
    }
    
    public void setEndTime(LocalDateTime endTime) {
        this.endTime = endTime;
    }
    
    public String getLocation() {
        return location;
    }
    
    public void setLocation(String location) {
        this.location = location;
    }
    
    public Integer getMaxVolunteers() {
        return maxVolunteers;
    }
    
    public void setMaxVolunteers(Integer maxVolunteers) {
        this.maxVolunteers = maxVolunteers;
    }
    
    public Integer getCurrentVolunteers() {
        return currentVolunteers;
    }
    
    public void setCurrentVolunteers(Integer currentVolunteers) {
        this.currentVolunteers = currentVolunteers;
    }
    
    public String getStatus() {
        return status;
    }
    
    public void setStatus(String status) {
        this.status = status;
    }
    
    public String getCoverImageUrl() {
        return coverImageUrl;
    }
    
    public void setCoverImageUrl(String coverImageUrl) {
        this.coverImageUrl = coverImageUrl;
    }
    
    public List<String> getProjectImages() {
        return projectImages;
    }
    
    public void setProjectImages(List<String> projectImages) {
        this.projectImages = projectImages;
    }
    
    public Integer getLikes() {
        return likes;
    }
    
    public void setLikes(Integer likes) {
        this.likes = likes;
    }
    
    public Integer getDislikes() {
        return dislikes;
    }
    
    public void setDislikes(Integer dislikes) {
        this.dislikes = dislikes;
    }
    
    public Integer getAdminId() {
        return adminId;
    }
    
    public void setAdminId(Integer adminId) {
        this.adminId = adminId;
    }
    
    public Integer getOrganizerId() {
        return organizerId;
    }
    
    public void setOrganizerId(Integer organizerId) {
        this.organizerId = organizerId;
    }
    
    public List<ProjectCategory> getCategories() {
        return categories;
    }
    
    public void setCategories(List<ProjectCategory> categories) {
        this.categories = categories;
    }
    
    public User getOrganizer() {
        return organizer;
    }
    
    public void setOrganizer(User organizer) {
        this.organizer = organizer;
    }
    
    public List<User> getVolunteers() {
        return volunteers;
    }
    
    public void setVolunteers(List<User> volunteers) {
        this.volunteers = volunteers;
    }
} 